package io.hansan.oli.dao;
import javax.xml.bind.annotation.*;
import lombok.Data;
/**
 * @Author ：何汉叁
 * @Date ：2025/5/22 16:55
 * @Description：TODO
 */
@XmlRootElement(name = "MBGMCR04")
@XmlAccessorType(XmlAccessType.FIELD)
@Data
public class MBGMCR04DAO {

    @XmlElement(name = "IDOC")
    private Idoc idoc;

    @Data
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class Idoc {
        @XmlElement(name = "EDI_DC40")
        private EdiDc40 ediDc40;

        @XmlElement(name = "E1MBGMCR")
        private E1Mbgmcr e1Mbgmcr;
    }

    @Data
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class EdiDc40 {
        // Metadata fields that we don't need to process
    }

    @Data
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class E1Mbgmcr {
        @XmlElement(name = "TESTRUN")
        private String testRun;

        @XmlElement(name = "E1BP2017_GM_HEAD_01")
        private E1Bp2017GmHead01 e1Bp2017GmHead01;

        @XmlElement(name = "E1BP2017_GM_CODE")
        private E1Bp2017GmCode e1Bp2017GmCode;

        @XmlElement(name = "E1BP2017_GM_ITEM_CREATE")
        private E1Bp2017GmItemCreate e1Bp2017GmItemCreate;
    }

    @Data
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class E1Bp2017GmHead01 {
        @XmlElement(name = "PSTNG_DATE")
        private String pstngDate;

        @XmlElement(name = "DOC_DATE")
        private String docDate;
    }

    @Data
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class E1Bp2017GmCode {
        @XmlElement(name = "GM_CODE")
        private String gmCode;
    }

    @Data
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class E1Bp2017GmItemCreate {
        @XmlElement(name = "MATERIAL")
        private String material;

        @XmlElement(name = "PLANT")
        private String plant;

        @XmlElement(name = "BATCH")
        private String batch;

        @XmlElement(name = "ENTRY_QNT")
        private String entryQnt;

        @XmlElement(name = "ENTRY_UOM")
        private String entryUom;

        @XmlElement(name = "ORDERID")
        private String orderId;

    }
}